//
//  MainNavigationController.swift
//  WeiBo14
//
//  Created by rzj on 16/3/10.
//  Copyright © 2016年 rzj. All rights reserved.
//

import UIKit

class MainNavigationController: UINavigationController {

    override func pushViewController(viewController: UIViewController, animated: Bool) {
        
        //判断子控制器个数大于0 设置返回按钮
        if childViewControllers.count > 0 {
            
            var str = "返回"
            
            //已存在一个控制器 正在push第二个 当前控制器设置为第一个控制器title 其后的设置为返回
            if childViewControllers.count == 1 {
                //如果第一个控制器title有值 直接赋值 否则设置默认返回
                str = childViewControllers.first?.title ?? "返回"
            }
            
            
            //self.navigationItem.leftBarButtonItem 此处使用方法内部的viewController
           viewController.navigationItem.leftBarButtonItem = UIBarButtonItem(imgName: "navigationbar_back_withtext", title: str, target: self, action: "popVc")
            //设置子控制器的标题(如果tabBarItem.title有值)
            if let tabTitle = tabBarItem.title {
                viewController.title = tabTitle + "的子控制器"
            }
           //设置控制器view的默认背景颜色
           viewController.view.backgroundColor = UIColor.lightGrayColor()
           //隐藏底部tabBar
           viewController.hidesBottomBarWhenPushed = true
        }
    
        //实现系统的跳转功能 放在最后
        super.pushViewController(viewController, animated: animated)

    }
    
    func popVc() {
        
        //navigationController?.popViewControllerAnimated(true)
        popToRootViewControllerAnimated(true)
    }
    
}
